Integration of seismic driven rock property into a geo-cellular model

ABSTRACT

Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, to generate generating geo-cellular models with improved lacunae. In one aspect, a method includes receiving a seismic dataset of a surveyed subsurface, and the seismic dataset includes seismic porosities in depth of the surveyed subsurface. Seismic porosities resampled into a three dimensional (3D) geological fine layer model grid. Seismic porosities at well locations are extracted using the 3D geological fine layer model grid. Log porosities and the seismic porosities are upscaled into coarse layers, and the coarse layers are identical for all the well locations. Match factors are determined based on differences between the upscaled log porosities and the downscaled seismic porosities. Co-krig the log porosities are correlated with the 3D geological fine layer model grid using the match factors as a soft constraint to produce a final 3D model.

TECHNICAL FIELD

This disclosure relates to methods, systems, and apparatus for improvingthe exploration for hydrocarbons.

BACKGROUND

Hydrocarbons, such as oil and gas, occur in the Earth's subsurface at adepth ranging from a few hundred meters to several kilometers and arefound in geological formations, which are layers of rock. As such,prospecting for hydrocarbons includes the difficult tasks ofidentification of where such geological formations exist and extractionof the hydrocarbons from these geological formations at such depths.Identifying the location of hydrocarbons may include the conducting ofgeological surveys collected through, for example, seismic prospecting.These geological surveys can be employed to construct geological mapsrepresenting the structure of areas of the outer crust of the Earth.

SUMMARY

Implementations of the present disclosure are generally directed to asystem generating geo-cellular models with improved reliability. Thedescribed system improves geo-cellular models by comparing well logsdata and seismic data in scaled up compartments that conform to modelgrids in a one dimensional (1D) mode where a correlation log may becreated at every well location. These correlation logs may be employedto generate a correlation model having the same dimension as ageological model.

Methods, systems, and apparatus, including computer programs encoded ona computer storage medium, to generate generating geo-cellular modelswith improved predictability. In one aspect, a method includes receivinga seismic dataset of a surveyed subsurface, and the seismic datasetincludes seismic porosities in depth of the surveyed subsurface. Seismicporosities resampled into a three dimensional (3D) geological fine layermodel grid. Seismic porosities at well locations are extracted using the3D geological fine layer model grid. Log porosities and the seismicporosities are upscaled into coarse layers, and the coarse layers areidentical for all the well locations. Match factors are determined basedon differences between the upscaled log porosities and the downscaledseismic porosities. Colocated cokrig the log porosities with the 3Dgeological fine layer model grid using the match factors as a softconstraint to produce a final 3D model.

It is appreciated that methods in accordance with the present disclosurecan include any combination of the aspects and features describedherein. That is, methods in accordance with the present disclosure arenot limited to the combinations of aspects and features specificallydescribed herein, but also may include any combination of the aspectsand features provided.

The details of one or more implementations of the present disclosure areset forth in the accompanying drawings and the description below. Otherfeatures and advantages of the present disclosure will be apparent fromthe description and drawings, and from the claims.

BRIEF DESCRIPTION OF DRAWINGS

FIGS. 1A-B illustrate example well log-seismic porosity cross plots.

FIG. 2 is a flowchart illustrating an example method for propagatecorrelation weights in the model space based on a spatial and temporalmatch between seismic and log data and to cokrige the logs with seismicsoft constraints with a three dimensional (3D) weight.

FIGS. 3A-F is an example of a complete sequential buildup of theworkflow.

FIGS. 4A-D are schematic diagrams 400-460 respectively.

FIGS. 5A-B depict results of final model.

FIGS. 6A-B depicts examples of layer of porosity models 600 and 650respectively within a sequence boundary.

FIG. 7 depicts a block diagram of an exemplary computer system used toprovide computational functionalities associated with describedalgorithms, methods, functions, processes, flows, and procedures asdescribed in the instant disclosure, according to an implementation.

DETAILED DESCRIPTION

This disclosure generally describes a system to generate geo-cellularmodels with improved predictability. The disclosure is presented toenable any person skilled in the art to make and use the disclosedsubject matter in the context of one or more particular implementations.Various modifications to the disclosed implementations will be readilyapparent to those skilled in the art, and the general principles definedin this application may be applied to other implementations andapplications without departing from scope of the disclosure. Thus, thepresent disclosure is not intended to be limited to the described orillustrated implementations, but is to be accorded the widest scopeconsistent with the principles and features disclosed in thisapplication.

To extract the contained hydrocarbons, a respective geological formationhas to have sufficient porosity and permeability to be productive.Porosity includes the fraction of the bulk volume of rock that is notrock (e.g., the spaces in between grains). Porosity may range from a fewpercent to more than 30 percent. Hydrocarbon formations may also containwater in the pore spaces, which may or may not flow along with thehydrocarbon. Permeability includes a measure of how easily fluids flowthrough a porous rock, which may vary dramatically by layer. Geologicalmodels, for example, can be employed to capture the spatial variabilityin porosity, permeability, and water and hydrocarbon saturations.

Moreover, geological layers and formations may exhibit even morecomplexity in the subsurface than they do at the surface. Theseformation may include, for example, meandering river channels andstreams, carbonate reefs, beaches, dunes and the jumbled mix of sandsand shales that characterize turbidities. Additionally, complex faults,salt domes and other features further complicate the subterraneanenvironment.

Seismic surveys, well logs, cores, and so forth may be employed togenerate 3D models that map subsurface formations. For example, ageo-cellular model may use grids to construct a static model of areservoir. These grids may include information regarding thepetrophysical, geological, geophysical, fluid, and rock depicted asspatially distributed throughout the respective reservoir. For example,a geo-cellular model may include a vertical cell size of one to twofeet. Such a model can be constructed by kriging the well logs into thespace using a deterministic or a stochastic approach. Kriging comprisesa method of interpolation for which the interpolated values are modeledby a Gaussian process governed by prior covariances, as opposed to apiecewise-polynomial spline chosen to optimize smoothness of the fittedvalues. In some implementations, seismic driven rock property (e.g.,porosity) can be integrated into a geo-cellular model as seismic drivenrock properties have more spatial coverage as compared to wells. Acorrelation can be made between the integrated seismic property and alog property. Such log properties may be obtained via well logging, alsoknown as wireline logging. Well logging includes the collection of data(log properties) in the borehole environment. The collected logproperties may enable, for example, the determination of subsurfacephysical properties and reservoir parameters. In general, well logsrespond to variations in rock matrix and pore fluid composition. Anexample correlation made between the integrated seismic property and alog property, may include determining a correlation value to weight theseismic property as a soft constraint in the geo-cellular model. In someimplementations, such a model may include large imperfections (e.g., apositive correlation where, in some layers, the properties correlatenegatively) as the resolutions of seismic properties and well log arenot the same. Thus comparing these data points directly can results inpoor correlation.

Geo-cellular models may be input to a dynamic model, which can beemployed for reservoir simulations. For example, in a reservoirsimulator, fluid flow and material balance equations may be solved foreach of the grids within the geo-cellular model to predict reservoirbehavior under various alternatives.

Seismic data integration into a geologic model is fraught with lacunaedue to large dissimilarity in log and seismic scales. Seismic propertydoes not have the vertical resolution of a geological model and ageological model does not have the seismic heterogeneity. This workflowbrings in a concept where seismic property can be integrated with a 3Dweight which is varying both spatially and temporally.

In view of the forgoing, the described system includes a methodology toimprove reliability in generated geo-cellular models. In someimplementation, the described system improves geo-cellular models bycomparing well logs data and seismic data in scaled up compartments thatconform to model grids in a one dimensional (1D) mode where acorrelation log may be created at every well location. These correlationlogs may be employed to generate a correlation model having the samedimension as a geological model. Seismic data can be weighed in as asoft constraint with the generated correlation model as a 3D property ina collocated cokriging of the well data. The resulting geo-cellularmodel not only faithfully incorporates the seismic data with itsvariability, but also gives better correlation while validating with theblind wells. Blind wells, for example, are wells that are not used inmodel building as they may be kept separate to test the predictabilityof a model.

In some implementations, a seismic property cube in depth may be in adifferent scale than a geo-cellular model. For example, a typicalSeismic scale may be around 40 feet whereas a geo-cellular model scalemay be between one to two feet. As such, these two properties may not beable to be directly compared. The integration of seismic data into amodel may include establishing a correlation coefficient between logdata and seismic data. This correlation coefficient may be in eithermodel scale or seismic scale. In some implementations, the seismic scaleprovides a better correlation than model scale. The integration ofseismic data into a model may include cokrig the well logs with theseismic property as soft constraints with the correlation coefficient asthe weight. For example, traditional regression methods may only usedata available at a target location and fail to use existing spatialcorrelations from secondary-data control points and the primaryattribute to be estimated.

Cokriging methods can be employed to take advantage of the covariancebetween two or more regionalized variables that are related, and can beappropriate when the main attribute of interest (well data) is sparse,but related secondary information (seismic) is abundant. Cokriging is ageostatistical technique that can be used for interpolation (mapping andcontouring) purposes. In some implementations, cokriging is ageneralized form of a multivariate linear regression model, forestimation at a point, over an area, or within a volume. The techniquemay include linear-weighted averaging methods, similar to otherinterpolation methods; however, the weights may depend not only ondistance, but also on the direction and orientation of neighboring datato an unsampled location.

Geostatistical-data-integration methods yield more-reliable reservoirmodels because they capitalize on the strengths of both data types. Thisintegration of seismic data into a model may suffer from severaldrawbacks. For example, correlation from point observations is constantthroughout the model space, the correlation is not valid in many partsof the model space, and establishing the correlation is doubtful as thecomparison is not an “apple-to-apple” comparison.

FIG. 1A depicts an example well log-seismic porosity cross plot sampling100 at four milliseconds (ms). FIG. 1B depicts an example welllog-seismic porosity cross plot 150 at a sampling of one foot(Geological model scale). Traditional ways of incorporation seismic dataincludes a regression analysis of seismic and well data to determine thecorrelation coefficient, which can be determined either in the seismicscale as depicted in FIG. 1A or model scale as depicted in FIG. 1B. Bothof these may not be correct as a large correlation coefficient arrivedat from FIG. 1A is not valid at the model scale and a small correlationcoefficient from FIG. 1B is incorrect as variables of different scalescannot be compared.

In order to mitigate these drawbacks, the describe system may implementa process, such as the example process 200 depicted in FIG. 2. Theexample process 200 can be employed by the described system andaccording implementations of the present disclosure. For clarity ofpresentation, the description that follows generally describes process200 in the context of FIGS. 1A and 3-8. However, it will be understoodthat process 200 may be performed, for example, by any other suitablesystem, environment, software, and hardware, or a combination ofsystems, environments, software, and hardware. In some implementations,various steps of the depicted process 200 can be run in parallel, incombination, in loops, or in any order.

The example process 200 may be employed by the described system topropagate correlation weights in the model space based on a spatial andtemporal match between seismic and log data and to cokrige the logs withseismic soft constraints with a three dimensional (3D) weight. Krigingand cokriging are employed within the example process 200 as it providesa linear unbiased prediction of intermediate values. Kriging is donewith one variable, and cokriging is employed when number of variables ismore than one. In some implementations, Kriging is employed to predictthe value of a function at a given point by computing a weighted averageof the known values of the function in the neighborhood of the point.Such a method (Kriging) is mathematically closely related to regressionanalysis/modeling as both theories derive a best linear unbiasedestimator, based on assumptions on covariances, make use of Gauss-Markovtheorem to prove independence of the estimate and error, and make use ofa similar formulae. Even so, they are useful in different frameworks.For example, Kriging may be employed for the estimation of a singlerealization of a random field, while a regression model may be based onmultiple observations of a multivariate data set.

At 202, the seismic porosity in depth is resampled into a 3D geologicalfine layer model grid. Seismic porosity includes a sample interval,which can be different from the sampling interval of the 3D geologicalfine layer model. Therefore, the seismic property can be resampled tofit into the model grid. In some implementations, the seismic porosityis calculated from inversion of seismic data. The inversion can be apost stack, pre stack, or stochastic inversion. Seismic porosity can beestimated by using a transform from a regression analysis using, forexample, a multi-attribute transform or a neural network. From 202, theprocess 200 proceeds to 204.

At 204, the seismic porosity is extracted at well locations, where welllog data exists, in order to compare the original well log with theseismic data. For example, once seismic data is loaded into the 3Dgeological fine layer model grid, it can be extracted as a well log atany location within the model. But we need to extract it at welllocations. From 204, the process 200 proceeds to 206.

At 206, log porosity, which includes the porosity values from well logs,and the seismic porosity are upscaled into coarse layers where a visualcomparison can be made. For example, well logs and extracted seismicdata at well locations can be displayed to determine several intervalswithin which they can be compared. These intervals or layers arenormally much thicker than the model layers and thus are referenced toas coarse layers. In some implementation, this step is performed for allthe wells in the model and the coarse layers are the same for all of thewells. From 206, the process 200 proceeds to 208.

At 208, the error is calculated as the log porosity (L) minus theseismic porosity (S). For example, upscaling may include a process bywhich a property measured in fine scale is averaged or resampled in acoarser scale. Similarly, downscaling may include a process where ameasurement done in a large scale is re-measured in fine scale. Here thefine scale well logs are upscaled and seismic property extracted as welllogs are downscaled to the same coarse grid. The error includes thedifference in values of the property at each grid. From 208, the process200 proceeds to 210.

At 210, a match factor is determined. For example, the measured error ateach layer of the coarse grid is signed (e.g., positive or negativevalues). The absolute error is calculated as the absolute value of theerror. The absolute value of the measured error provides the relativeerror at each layer at a well location. The absolute error may then benormalized by, for example, dividing the absolute error by a maximumabsolute value error (e.g., the largest error at the well location).Thus, at each well location, relative errors ranging from 0 to 1 aredetermined. This is the mismatch at each layer at the well location, soone minus the mismatch (the normalized absolute error) provides arelative match between the well log and seismic data at each coarsegrid. This relative match may be referred to as the match factor. Insome implementations, the match factor value depends on the absoluteerror between seismic property and well data. A check factor may beemployed to determine how much the seismic property differs from thewell data as a percentage of well data. For example, an arbitrary limitof percentage value (e.g., 75 percent) may be set, which means that ifthe seismic property differs by the percentage value (e.g., 75 percent)of the log data, then the seismic data can be rejected by setting thematch factor as “0”. As such, this check factor reassures that onlyreliable prediction from seismic data is used and wide fluctuations arerejected. From 210, the process 200 proceeds to 212.

At 212, match factor is downscaled into fine layer model grid as thematch factor is a well log sampled in a coarse grid. Such a match factorlog may describe the relation between the log and seismic property atthe well location. A 3D geological model (e.g., a 3D property cube) withthese logs may also be generated, which describes the weight of theseismic at individual cell as a 3D property. This 3D property cube maybe employed as weight in collocated cokriging the well logs with seismicproperty as a soft constraint to create the final geologic model. From216, the process 200 ends.

FIG. 3 illustrates an example of a complete sequential buildup of aworkflow. At 310, Log and seismic property in a well are determined. At320, log and seismic property are upscaled to coarse grid based onsequence stratigraphic layers of the model. Next, at 330, the arithmaticdifference in upscaled properties Log(L)−Seismic(S) are determined. At340, the absolute value of the difference ABS(L−S) is calculated. At350, the difference in each individual logs is normalized so that eachlog has a minimum ‘0’ and maximum ‘1’. This is the mismatch log at thewell can be denoted as NORM(ABS(L−S)). At 360, a correlation log isdetermined and equal to 1−mismatch log. If ABS(L−S)/L is greater than0.75, then the correlation log value for the cell is set to “0”. In someimplementations, the Correlation Log is further scaled to thecorrelation value observed in seismic scale. At 370, the Correlation Logis down-scaled to model grid. The correlation established in theindividual sequence boundary is assumed valid for all the fine gridscontained within the same sequence boundary.

FIG. 4A-4D depict schematic diagrams 400-460 respectively. FIG. 4Adepicts a schematic diagram 400 of a 3D model of well log (hard) data.FIG. 4B depicts a schematic diagram 420 of seismic property (softconstraint). FIG. 4C depicts a schematic diagram 440 of a 3D correlationmodel as weight. FIG. 4D depicts a schematic diagram 460 final 3Dgeological model. In some implementations, a 3D model, such as depictedin FIG. 4A, can be collocated co-kriged with seismic property (softdata), such as depicted in FIG. 4B, with a 3D correlation model, such asdepicted in FIG. 3C, to produce a final 3D geological model, such asdepicted in FIG. 4D.

FIGS. 5A-B and 6A-B depicts results of final model generated accordingto implementations of the present disclosure. FIG. 5A depicts an examplecross plot 500 of blind well correlation from a well only model with acorrelation of 76 percent. The depicted graph shows the correlation ofwell log porosity and predicted porosity from a model that is created atfive blind well locations.

FIG. 5B depicts an example cross plot 520 of a blind well correlationfrom well plus seismic model with a correlation of 80 percent. FIG. 5Bshows the same cross plot from the same five blind well locations asdepicted in the example cross plot 500 of FIG. 5A. The example 520 crossplot depicts where the 3D geological model was built with the proposedworkflow. The cross correlation value, which is a measure ofpredictability, shows an improvement from 76% to 80%.

FIGS. 6A and 6B depicts examples of layer of porosity models 600 and 650respectively within a sequence boundary. FIG. 6A depicts the well dataonly. FIG. 6B depicts the well and seismic data. FIG. 6A shows porosityof a layer from a model that has been built traditionally where as 6Bshows the same layer from the model built through the described systemand according to implementations of the present disclosure.

FIG. 7 depicts a block diagram of an exemplary computer system 700 usedto provide computational functionalities associated with describedalgorithms, methods, functions, processes, flows, and procedures asdescribed in the instant disclosure, according to an implementation. Theillustrated computer 702 is intended to encompass any computing devicesuch as a server, desktop computer, laptop or notebook computer,wireless data port, smart phone, personal data assistant (PDA), tabletcomputing device, or one or more processors within these devices,including both physical or virtual instances (or both) of the computingdevice. Additionally, the computer 702 may comprise a computer thatincludes an input device, such as a keypad, keyboard, touch screen, orother device that can accept user information, and an output device thatconveys information associated with the operation of the computer 702,including digital data, visual, or audio information (or a combinationof information), or a GUI.

The computer 702 can serve in a role as a client, network component, aserver, a database or other persistency, or any other component (or acombination of roles) of a computer system for performing the subjectmatter described in the instant disclosure. The illustrated computer 702is communicably coupled with a network 730. In some implementations, oneor more components of the computer 702 may be configured to operatewithin environments, including cloud-computing-based, local, global, ora combination of environments.

At a high level, the computer 702 is an electronic computing deviceoperable to receive, transmit, process, store, or manage data andinformation associated with the described subject matter. According tosome implementations, the computer 702 may also include or becommunicably coupled with an application server, e-mail server, webserver, caching server, streaming data server, business intelligence(BI) server, or other server (or a combination of servers).

The computer 702 can receive requests over network 730 from a clientapplication (for example, executing on another computer 702) andresponding to the received requests by processing the said requests in asoftware application. In addition, requests may also be sent to thecomputer 702 from internal users (for example, from a command console orby other access method), external or third parties, other automatedapplications, as well as any other entities, individuals, systems, orcomputers.

Each of the components of the computer 702 can communicate using asystem bus 703. In some implementations, any or all of the components ofthe computer 702, both hardware or software (or a combination ofhardware and software), may interface with each other or the interface704 (or a combination of both) over the system bus 703 using anapplication programming interface (API) 712 or a service layer 713 (or acombination of the API 712 and service layer 713). The API 712 mayinclude specifications for routines, data structures, and objectclasses. The API 712 may be either computer-language independent ordependent and refer to a complete interface, a single function, or evena set of APIs. The service layer 713 provides software services to thecomputer 702 or other components (whether or not illustrated) that arecommunicably coupled to the computer 702. The functionality of thecomputer 702 may be accessible for all service consumers using thisservice layer. Software services, such as those provided by the servicelayer 713, provide reusable, defined business functionalities through adefined interface. For example, the interface may be software written inJAVA, C++, or other suitable language providing data in extensiblemarkup language (XML) format or other suitable format. While illustratedas an integrated component of the computer 702, alternativeimplementations may illustrate the API 712 or the service layer 713 asstand-alone components in relation to other components of the computer702 or other components (whether or not illustrated) that arecommunicably coupled to the computer 702. Moreover, any or all parts ofthe API 712 or the service layer 713 may be implemented as child orsub-modules of another software module, enterprise application, orhardware module without departing from the scope of this disclosure.

The computer 702 includes an interface 704. Although illustrated as asingle interface 704, two or more interfaces 704 may be used accordingto particular needs, desires, or particular implementations of thecomputer 702. The interface 704 is used by the computer 702 forcommunicating with other systems in a distributed environment that areconnected to the network 730 (whether illustrated or not). Generally,the interface 704 comprises logic encoded in software or hardware (or acombination of software and hardware) and operable to communicate withthe network 730. More specifically, the interface 704 may comprisesoftware supporting one or more communication protocols associated withcommunications such that the network 730 or interface's hardware isoperable to communicate physical signals within and outside of theillustrated computer 702.

The computer 702 includes a processor 705. Although illustrated as asingle processor 705, two or more processors may be used according toparticular needs, desires, or particular implementations of the computer702. Generally, the processor 705 executes instructions and manipulatesdata to perform the operations of the computer 702 and any algorithms,methods, functions, processes, flows, and procedures as described in theinstant disclosure.

The computer 702 also includes a memory 706 that holds data for thecomputer 702 or other components (or a combination of both) that can beconnected to the network 730 (whether illustrated or not). For example,memory 706 can be a database storing data consistent with thisdisclosure. Although illustrated as a single memory 706, two or morememories may be used according to particular needs, desires, orparticular implementations of the computer 702 and the describedfunctionality. While memory 706 is illustrated as an integral componentof the computer 702, in alternative implementations, memory 706 can beexternal to the computer 702.

The application 707 is an algorithmic software engine providingfunctionality according to particular needs, desires, or particularimplementations of the computer 702, particularly with respect tofunctionality described in this disclosure. For example, application 707can serve as one or more components, modules, or applications. Further,although illustrated as a single application 707, the application 707may be implemented as multiple applications 707 on the computer 702. Inaddition, although illustrated as integral to the computer 702, inalternative implementations, the application 707 can be external to thecomputer 702.

There may be any number of computers 702 associated with, or externalto, a computer system containing computer 702, each computer 702communicating over network 730. Further, the term “client,” “user,” andother terminology may be used interchangeably as without departing fromthe scope of this disclosure. Moreover, this disclosure contemplatesthat many users may use one computer 702, or that one user may usemultiple computers 702.

Implementations of the subject matter and the functional operationsdescribed in this specification can be implemented in digital electroniccircuitry, in tangibly embodied computer software or firmware, incomputer hardware, including the structures disclosed in thisspecification and their structural equivalents, or in combinations ofone or more of them. Implementations of the subject matter described inthis specification can be implemented as one or more computer programs,that is, one or more modules of computer program instructions encoded ona tangible, non-transitory, computer-readable computer-storage mediumfor execution by, or to control the operation of, data processingapparatus. Alternatively or in addition, the program instructions can beencoded on an artificially generated propagated signal, for example, amachine-generated electrical, optical, or electromagnetic signal that isgenerated to encode information for transmission to suitable receiverapparatus for execution by a data processing apparatus. Thecomputer-storage medium can be a machine-readable storage device, amachine-readable storage substrate, a random or serial access memorydevice, or a combination of computer-storage mediums.

The terms “data processing apparatus,” “computer,” or “electroniccomputer device” (or equivalent as understood by one of ordinary skillin the art) refer to data processing hardware and encompass all kinds ofapparatus, devices, and machines for processing data. Such devices caninclude, for example, a programmable processor, a computer, or multipleprocessors or computers. The apparatus can also be or further includespecial purpose logic circuitry, for example, a central processing unit(CPU), a field programmable gate array (FPGA), or anapplication-specific integrated circuit (ASIC). In some implementations,the data processing apparatus or special purpose logic circuitry (or acombination of the data processing apparatus or special purpose logiccircuitry) may be hardware- or software-based (or a combination of bothhardware- and software-based). The apparatus can optionally include codethat creates an execution environment for computer programs, forexample, code that constitutes processor firmware, a protocol stack, adatabase management system, an operating system, or a combination ofexecution environments. The present disclosure contemplates the use ofdata processing apparatuses with or without conventional operatingsystems, for example, LINUX, UNIX, WINDOWS, MAC OS, ANDROID, IOS or anyother suitable conventional operating system.

A computer program, which may also be referred to or described as aprogram, software, a software application, a module, a software module,a script, or code, can be written in any form of programming language,including compiled or interpreted languages, or declarative orprocedural languages, and it can be deployed in any form, including as astand-alone program or as a module, component, subroutine, or other unitsuitable for use in a computing environment. A computer program may, butneed not, correspond to a file in a file system. A program can be storedin a portion of a file that holds other programs or data, for example,one or more scripts stored in a markup language document, in a singlefile dedicated to the program in question, or in multiple coordinatedfiles, for example, files that store one or more modules, sub-programs,or portions of code. A computer program can be deployed to be executedon one computer or on multiple computers that are located at one site ordistributed across multiple sites and interconnected by a communicationnetwork. While portions of the programs illustrated in the variousfigures are shown as individual modules that implement the variousfeatures and functionality through various objects, methods, or otherprocesses, the programs may instead include a number of sub-modules,third-party services, components, or libraries. Conversely, the featuresand functionality of various components can be combined into singlecomponents.

The processes and logic flows described in this specification can beperformed by one or more programmable computers executing one or morecomputer programs to perform functions by operating on input data andgenerating output. The processes and logic flows can also be performedby, and apparatus can also be implemented as, special purpose logiccircuitry, for example, a CPU, an FPGA, or an ASIC.

Computers suitable for the execution of a computer program can be basedon general or special purpose microprocessors, both, or any other kindof CPU. Generally, a CPU will receive instructions and data from aread-only memory (ROM) or a random access memory (RAM) or both. Theessential elements of a computer are a CPU for performing or executinginstructions and one or more memory devices for storing instructions anddata. Generally, a computer will also include, or be operatively coupledto, receive data from or transfer data to, or both, one or more massstorage devices for storing data, for example, magnetic, magneto-opticaldisks, or optical disks. However, a computer need not have such devices.Moreover, a computer can be embedded in another device, for example, amobile telephone, a personal digital assistant (PDA), a mobile audio orvideo player, a game console, a global positioning system (GPS)receiver, or a portable storage device, for example, a universal serialbus (USB) flash drive, to name just a few.

Computer-readable media (transitory or non-transitory) suitable forstoring computer program instructions and data include all forms ofnon-volatile memory, media and memory devices, including by way ofexample semiconductor memory devices, for example, erasable programmableread-only memory (EPROM), electrically erasable programmable read-onlymemory (EEPROM), and flash memory devices; magnetic disks, for example,internal hard disks or removable disks; magneto-optical disks; andcompact disc read-only memory (CD-ROM), Digital Versatile Disc(DVD)+/−R, DVD-RAM, and DVD-ROM disks. The memory may store variousobjects or data, including caches, classes, frameworks, applications,backup data, jobs, web pages, web page templates, database tables,repositories storing dynamic information, and any other informationincluding any parameters, variables, algorithms, instructions, rules,constraints, or references thereto. Additionally, the memory may includeany other data, such as logs, policies, security or access data, orreporting files. The processor and the memory can be supplemented by, orincorporated in, special purpose logic circuitry.

To provide for interaction with a user, implementations of the subjectmatter described in this specification can be implemented on a computerhaving a display device, for example, a cathode ray tube (CRT), liquidcrystal display (LCD), Light Emitting Diode (LED), or plasma monitor,for displaying information to the user and a keyboard and a pointingdevice, for example, a mouse, trackball, or trackpad, by which the usercan provide input to the computer. Input may also be provided to thecomputer using a touchscreen, such as a tablet computer surface withpressure sensitivity, a multi-touch screen using capacitive or electricsensing, or other type of touchscreen. Other kinds of devices can beused to provide for interaction with a user as well; for example,feedback provided to the user can be any form of sensory feedback, forexample, visual feedback, auditory feedback, or tactile feedback; andinput from the user can be received in any form, including acoustic,speech, or tactile input. In addition, a computer can interact with auser by sending documents to and receiving documents from a device thatis used by the user; for example, by sending web pages to a web browseron a user's client device in response to requests received from the webbrowser.

The term graphical user interface (GUI) may be used in the singular orthe plural to describe one or more graphical user interfaces and each ofthe displays of a particular graphical user interface. Therefore, a GUImay represent any graphical user interface, including but not limitedto, a web browser, a touch screen, or a command line interface (CLI)that processes information and efficiently presents the informationresults to the user. In general, a GUI may include a plurality of userinterface (UI) elements, some or all associated with a web browser, suchas interactive fields, pull-down lists, and buttons operable by thebusiness suite user. These and other UI elements may be related to orrepresent the functions of the web browser.

Implementations of the subject matter described in this specificationcan be implemented in a computing system that includes a back-endcomponent, for example, as a data server, or that includes a middlewarecomponent, for example, an application server, or that includes afront-end component, for example, a client computer having a graphicaluser interface or a Web browser through which a user can interact withan implementation of the subject matter described in this specification,or any combination of one or more such back-end, middleware, orfront-end components. The components of the system can be interconnectedby any form or medium of wireline or wireless digital data communication(or a combination of data communication), for example, a communicationnetwork. Examples of communication networks include a local area network(LAN), a radio access network (RAN), a metropolitan area network (MAN),a wide area network (WAN), Worldwide Interoperability for MicrowaveAccess (WIMAX), a wireless local area network (WLAN) using, for example,702.11 a/b/g/n or 702.20 (or a combination of 702.11x and 702.20 orother protocols consistent with this disclosure), all or a portion ofthe Internet, or any other communication system or systems at one ormore locations (or a combination of communication networks). The networkmay communicate with, for example, Internet Protocol (IP) packets, FrameRelay frames, Asynchronous Transfer Mode (ATM) cells, voice, video,data, or other suitable information (or a combination of communicationtypes) between network addresses.

The computing system can include clients and servers. A client andserver are generally remote from each other and typically interactthrough a communication network. The relationship of client and serverarises by virtue of computer programs running on the respectivecomputers and having a client-server relationship to each other.

In some implementations, any or all of the components of the computingsystem, both hardware or software (or a combination of hardware andsoftware), may interface with each other or the interface using an APIor a service layer (or a combination of API and service layer). The APImay include specifications for routines, data structures, and objectclasses. The API may be either computer language independent ordependent and refer to a complete interface, a single function, or evena set of APIs. The service layer provides software services to thecomputing system. The functionality of the various components of thecomputing system may be accessible for all service consumers using thisservice layer. Software services provide reusable, defined businessfunctionalities through a defined interface. For example, the interfacemay be software written in JAVA, C++, or other suitable languageproviding data in extensible markup language (XML) format or othersuitable format. The API or service layer (or a combination of the APIand the service layer) may be an integral or a stand-alone component inrelation to other components of the computing system. Moreover, any orall parts of the service layer may be implemented as child orsub-modules of another software module, enterprise application, orhardware module without departing from the scope of this disclosure.

While this specification contains many specific implementation details,these should not be construed as limitations on the scope of thedescribed system or on the scope of what may be claimed, but rather asdescriptions of features that may be specific to particularimplementations. Certain features that are described in thisspecification in the context of separate implementations can also beimplemented in combination in a single implementation. Conversely,various features that are described in the context of a singleimplementation can also be implemented in multiple implementationsseparately or in any suitable sub-combination. Moreover, althoughfeatures may be described earlier as acting in certain combinations andeven initially claimed as such, one or more features from a claimedcombination can in some cases be excised from the combination, and theclaimed combination may be directed to a sub-combination or variation ofa sub-combination.

Particular implementations of the subject matter have been described.Other implementations, alterations, and permutations of the describedimplementations are within the scope of the following claims as will beapparent to those skilled in the art. While operations are depicted inthe drawings or claims in a particular order, this should not beunderstood as requiring that such operations be performed in theparticular order shown or in sequential order, or that all illustratedoperations be performed (some operations may be considered optional), toachieve desirable results. In certain circumstances, multitasking orparallel processing (or a combination of multitasking and parallelprocessing) may be advantageous and performed.

Moreover, the separation or integration of various system modules andcomponents in the implementations described earlier should not beunderstood as requiring such separation or integration in allimplementations, and it should be understood that the described programcomponents and systems can generally be integrated together in a singlesoftware product or packaged into multiple software products.

Accordingly, the earlier description of example implementations does notdefine or constrain this disclosure. Other changes, substitutions, andalterations are also possible without departing from the spirit andscope of this disclosure.

Furthermore, any claimed implementation described later is considered tobe applicable to at least a computer-implemented method, anon-transitory, computer-readable medium storing computer-readableinstructions to perform the computer-implemented method, and a computersystem comprising a computer memory interoperably coupled with ahardware processor configured to perform the computer-implemented methodor the instructions stored on the non-transitory, computer-readablemedium.

1. A computer-implemented method for generating a geo-cellular modelwith improved reliability executed by one or more processors, the methodcomprising: receiving a seismic dataset of a surveyed subsurface, theseismic dataset comprising seismic porosities in depth of the surveyedsubsurface; resampling seismic porosities into a three dimensional (3D)geological fine layer model grid; extracting seismic porosities at welllocations using the 3D geological fine layer model grid; upscaling logporosities and the seismic porosities into coarse layers, wherein thecoarse layers are identical for all the well locations; determiningmatch factors based on differences between the upscaled log porositiesand the downscaled seismic porosities; and collocating co-krig the logporosities with the 3D geological fine layer model grid using the matchfactors as a soft constraint to produce a final 3D model.
 2. Thecomputer-implemented method of claim 1, further comprising evaluating aproductivity of the surveyed subsurface according to the final 3D model.3. The computer-implemented method of claim 1, further comprisingcalculating errors based on differences between the upscaled logporosities and the downscaled seismic porosities.
 4. Thecomputer-implemented method of claim 3, further comprising: for each ofthe errors, calculating an absolute error; and for each of the absoluteerror, dividing that absolute error by a maximum absolute error toproduce a normalized absolute error, wherein each of the match factorsequal to one minus the normalized absolute error.
 5. Thecomputer-implemented method of claim 4, further comprising, for each ofthe match factors, setting that match factor to zero when that absoluteerror divided by the upscaled log value is greater than 0.75.
 6. Themethod of claim 5, further comprising: downscaling the match factorsinto a fine layer model grid; and generating a 3D correlation modelbased on the downscaled match factors, wherein the 3D correlation modelis used as the soft constraint to produce the final 3D model.
 7. One ormore non-transitory computer-readable storage media coupled to one ormore processors and having instructions stored thereon which, whenexecuted by the one or more processors, cause the one or more processorsto: receive a seismic dataset of a surveyed subsurface, the seismicdataset comprising seismic porosities in depth of the surveyedsubsurface; resample seismic porosities into a three dimensional (3D)geological fine layer model grid; extract seismic porosities at welllocations using the 3D geological fine layer model grid; upscale logporosities and the seismic porosities into coarse layers, wherein thecoarse layers are identical for all the well locations; determine matchfactors based on differences between the upscaled log porosities and thedownscaled seismic porosities; and collocate co-krig the log porositieswith the 3D geological fine layer model grid using the match factors asa soft constraint to produce a final 3D model.
 8. The computer-readablestorage media of claim 7, further comprising evaluating a productivityof the surveyed subsurface according to the final 3D model.
 9. Thecomputer-readable storage media of claim 7, further comprisingcalculating errors based on differences between the upscaled logporosities and the downscaled seismic porosities.
 10. Thecomputer-readable storage media of claim 9, further comprising: for eachof the errors, calculating an absolute error; and for each of theabsolute error, dividing that absolute error by a maximum absolute errorto produce a normalized absolute error, wherein each of the matchfactors equal to one minus the normalized absolute error.
 11. Thecomputer-readable storage media of claim 10, further comprising, foreach of the match factors, setting that match factor to zero when thatabsolute error divided by the upscaled log value is greater than 0.75.12. The computer-readable storage media of claim 11, further comprising:downscaling the match factors into a fine layer model grid; andgenerating a 3D correlation model based on the downscaled match factors,wherein the 3D correlation model is used as the soft constraint toproduce the final 3D model.
 13. A system, comprising: one or moreprocessors; and a computer-readable storage device coupled to the one ormore processors and having instructions stored thereon which, whenexecuted by the one or more processors, cause the one or more processorsto: receive a seismic dataset of a surveyed subsurface, the seismicdataset comprising seismic porosities in depth of the surveyedsubsurface; resample seismic porosities into a three dimensional (3D)geological fine layer model grid; extract seismic porosities at welllocations using the 3D geological fine layer model grid; upscale logporosities and the seismic porosities into coarse layers, wherein thecoarse layers are identical for all the well locations; determine matchfactors based on differences between the upscaled log porosities and thedownscaled seismic porosities; and collocate co-krig the log porositieswith the 3D geological fine layer model grid using the match factors asa soft constraint to produce a final 3D model.
 14. The system of claim13, further comprising evaluating a productivity of the surveyedsubsurface according to the final 3D model.
 15. The system of claim 13,further comprising calculating errors based on differences between theupscaled log porosities and the downscaled seismic porosities.
 16. Thesystem of claim 15, further comprising: for each of the errors,calculating an absolute error; and for each of the absolute error,dividing that absolute error by a maximum absolute error to produce anormalized absolute error, wherein each of the match factors equal toone minus the normalized absolute error.
 17. The system of claim 16,further comprising, for each of the match factors, setting that matchfactor to zero when that absolute error divided by the upscaled logvalue is greater than 0.75.
 18. The system of claim 17, furthercomprising: downscaling the match factors into a fine layer model grid;and generating a 3D correlation model based on the downscaled matchfactors, wherein the 3D correlation model is used as the soft constraintto produce the final 3D model.